On the Completeness of Selective Unification in Concolic Testing of Logic Programs
نویسندگان
چکیده
Concolic testing is a popular dynamic validation technique that can be used for both model checking and automatic test case generation. We have recently introduced concolic testing in the context of logic programming. In contrast to previous approaches, the key ingredient in this setting is a technique to generate appropriate run-time goals by considering all possible ways an atom can unify with the heads of some program clauses. This is called “selective” unification. In this paper, we show that the existing algorithm is not complete and explore different alternatives in order to have a sound and complete algorithm for selective unification.
منابع مشابه
Abstraction-driven Concolic Testing
ion-driven Concolic Testing‹ Przemys law Daca, Ashutosh Gupta, and Thomas A. Henzinger 1 IST Austria, Austria 2 Tata Institute for Fundamental Research, India Abstract. Concolic testing is a promising method for generating test suites for large programs. However, it suffers from the path-explosion problem and often fails to find tests that cover difficult-to-reach parts of programs. In contrast...
متن کاملConcolic Testing of Sequential and Concurrent Programs
Testing using manually generated test cases is the primary technique used in industry to improve reliability of software—in fact, such ad hoc testing accounts for over half of the typical cost of software development. We propose new methods for systematically and automatically testing sequential and concurrent programs. The methods are based on two new techniques: concolic testing and race-dete...
متن کاملEquality propositional logic and its extensions
We introduce a new formal logic, called equality propositional logic. It has two basic connectives, $boldsymbol{wedge}$ (conjunction) and $equiv$ (equivalence). Moreover, the $Rightarrow$ (implication) connective can be derived as $ARightarrow B:=(Aboldsymbol{wedge}B)equiv A$. We formulate the equality propositional logic and demonstrate that the resulting logic has reasonable properties such a...
متن کاملConcolic Testing on Embedded Software - Case Studies on Mobile Platform Programs
Current industrial testing practices often build test cases in a manual manner, which degrades both the effectiveness and efficiency of testing. To alleviate this problem, concolic testing generates test cases that can achieve high coverage in an automated fashion. This paper describes case studies of applying concolic testing to mobile platform C programs that have been developed by Samsung El...
متن کاملEffective Software Testing with a String - Constraint
This dissertation presents techniques and tools for improving software reliability, by using an expressive string-constraint solver to make implementation-based testing more effective and more applicable. Concolic testing is a paradigm of implementation-based systematic software testing that combines dynamic symbolic execution with constraint-based systematic execution-path enumeration. Concoli...
متن کامل